// 导入依赖的模块
yepjs.require("jquery");
yepjs.require("YBA.Common");
yepjs.require("YBA.Plugin.plugins");
yepjs.require("YBA.Data.Statistics");


// 安全审计 - 及时在线情况统计
yepjs.define("onlineTimely", {

    NS: "YBA.Logic.Statistics",

    field: function() {

        var Biz = {
            // 初始化事件
            init: function() {
                Biz.fn.getOnlineTimely(Biz.vars.data);
                for (var i in Biz.event) {
                    Biz.event[i]();
                }
            },
            //  公共变量
            vars: {
                // 模板列表
                tpl: (function(){
                    var tpl = {};
                    $("script[type='text/ysmart']").each(function(){
                        var t = $(this);
                        tpl[t.attr("data-name")] = t.html();
                    });
                    return tpl;
                })(),
                //暂定空参
                data:{}
            },
            // 页面元素
            el: {
                jtimelyList:$("#j-timelyList"),
                jstatisticsList:$("#j-statisticsList"),
                jrecordList:$("#j-recordList")
            },
            // 功能函数集合
            fn: {
                //获取及时在线情况统计信息
                getOnlineTimely:function(data){
                    YBA.Data.Statistics.customerOnlineTimely(data,function(json){
                        if(json.code == 200) {
                            Biz.el.jtimelyList.html(YBA.Common.ysmart(Biz.vars.tpl.timelyTpl, json.timelyOnline));
                            Biz.el.jstatisticsList.html(YBA.Common.ysmart(Biz.vars.tpl.statisticsTpl, json.todayOnlineStatistics));
                            Biz.el.jrecordList.html(YBA.Common.ysmart(Biz.vars.tpl.recordTpl, json.todayOnlineRecord));
                        }else{
                            YBA.Plugin.msgtip({type: "i", msg: json.desc});
                        }
                    })
                },
                //离线原因分析弹窗
                offlineForm:function(json){
                    var popform = new YBA.Plugin.popform({
                        title:"离线原因分析",
                        className:"ui-dialog-offline",
                        content:YBA.Common.ysmart(Biz.vars.tpl.offlineTpl,json || {}),
                        width:564,
                        destroy:true,
                        onHide: function () {
                            // 隐藏弹窗时要执行的回调函数
                        },
                        onShow:function(){
                            // 显示弹窗时要执行的回调函数
                        }
                    }).show();
                }
            },
            // 初始化时执行的所有事件
            event: {
                //离线原因分析
                offlineReasonToday:function(){
                    Biz.el.jrecordList.delegate(".j-offline","click", function() {
                        var t = $(this), tr = t.closest("tr"),id = tr.attr("data-id");
                        var data = {
                            "terminalId":id
                        }
                        YBA.Data.Statistics.offlineReasonToday(data,function(json){
                            if(json.code == 200) {
                                Biz.fn.offlineForm(json.todayOfflineReason);
                            }else{
                                YBA.Plugin.msgtip({type: "i", msg: json.desc});
                            }
                        })
                    });
                }
            }
        };

        Biz.init();

        return Biz;
    }
});
